package com.qijian.maindata.domain;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import com.qijian.common.annotation.Excel;
import com.qijian.common.core.domain.BaseEntity;
import com.qijian.common.utils.mybatis.WhereType;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.ToString;

import java.util.List;

/**
 * 提醒-前道工单未完成对象 rm_unfinished_previous_process
 *
 * @author qijian
 * @date 2024-12-11
 */
@EqualsAndHashCode(callSuper = true)
@Data
@ToString
@TableName("rm_unfinished_previous_process")
public class RmUnfinishedPreviousProcess extends BaseEntity {
    private static final long serialVersionUID = 1L;

    @JsonSerialize(using = ToStringSerializer.class)
    private Long id;

    @Excel(name = "车间" ,sort = 0)
    private String factoryName;

    @Excel(name = "产品",sort = 1)
    private String itemName;

    @JsonSerialize(using = ToStringSerializer.class)
    private Long projectId;

    @Excel(name = "开工令",sort = 2)
    private String projectMachineNo;

    @JsonSerialize(using = ToStringSerializer.class)
    private Long itemId;

    @Excel(name = "图号",sort = 3)
    private String drawingNo;

    @Excel(name = "件号",sort = 4)
    private String partNo;

    @JsonSerialize(using = ToStringSerializer.class)
    private Long userId;

    @Excel(name = "工单管理员",sort = 5)
    private String nickName;

    private Long maxSort;

    @Excel(name = "已完成工序",sort = 6)
    private String finishedProcess;

    @JsonSerialize(using = ToStringSerializer.class)
    private Long lineId;

    @Excel(name = "未完成工序",sort = 7)
    private String unfinishedProcess;

    @Excel(name = "工单编号",sort = 8)
    private String workCode;

    @JsonSerialize(using = ToStringSerializer.class)
    private Long projectManagerId;

    @Excel(name = "项目经理",sort = 10)
    private String projectManagerName;

    @JsonSerialize(using = ToStringSerializer.class)
    private Long workId;

    @TableField(exist = false)
    private List<ProcessOrderUsers> users;

    @Excel(name = "收集日期",sort = 11)
    private String collectDate;

    //车间主任邮箱
    private String factoryEmail;

    //项目经理邮箱
    private String projectEmail;

    //班组长邮箱
    private String managerEmail;

    @JsonSerialize(using = ToStringSerializer.class)
    private Long factoryUserId;
}
